import java.awt.Cursor;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionListener;
import java.util.HashMap;

public class OperadorApagar extends Operador {

	private HashMap<OpcaoOperadorApagar, EstadoOperadorApagar> estadosOperador;
	private EstadoOperadorApagar estadoOperadorAtual;

	/**
		 */
	public OperadorApagar(PainelDesenho painelDesenho) {
		super(painelDesenho);
		criarEstados();
	}

	public void selecionarEstado(OpcaoOperadorApagar opcaoOperadorApagar) {
		estadoOperadorAtual = estadosOperador.get(opcaoOperadorApagar);
	}

	public void iniciar() {
		painelDesenho.setCursor(Cursor.getDefaultCursor());
		selecionarEstado(OpcaoOperadorApagar.PESQUISA);
	}

	private void criarEstados() {
		// TODO Auto-generated method stub
		estadosOperador = new HashMap<OpcaoOperadorApagar, EstadoOperadorApagar>();
		estadosOperador.put(OpcaoOperadorApagar.PESQUISA,
				new EstadoPesquisaIdentificadorOperadorApagar(this));
		estadosOperador.put(OpcaoOperadorApagar.APAGAR,
				new EstadoRemocaoIdentificadorOperadorApagar(this));
		iniciar();
	}

	@Override
	public void mouseMoved(MouseEvent mouseEvent) {
		// TODO Auto-generated method stub
		super.mouseMoved(mouseEvent);
		estadoOperadorAtual.mouseMoved(mouseEvent);
	}

	@Override
	public void mousePressed(MouseEvent mouseEvent) {
		// TODO Auto-generated method stub
		super.mousePressed(mouseEvent);
		estadoOperadorAtual.mousePressed(mouseEvent);
	}

}
